//app.js
var network = require("utils/network.js");
//在需要加载html内容的页面对应的js文件里引入wxParse
var WxParse = require('/libs/wxParse/wxParse.js');

App({
  /**
   * Global shared
   * 可以定义任何成员，用于在整个应用中共享
   */
  data: {
    
  },
  /**
   * network API
   */
  network: network,
  /**
   * WxParse API
   */
  WxParse: WxParse,

  /**  
    * 当小程序初始化完成时，会触发 onLaunch（全局只触发一次）  
    */
  onLaunch: function (options) {
    
    // 调用API从本地缓存中获取数据  
    var that = this;
    var logs = wx.getStorageSync('logs') || []
    logs.unshift(Date.now())
    wx.setStorageSync('logs', logs)
  },

  getUserInfo: function (cb) {//参数为cb,类型为函数
    var that = this
    if (this.globalData.userInfo) {//用户信息不为空
      console.log(this.globalData.userInfo)
      typeof cb == "function" && cb(this.globalData.userInfo)//如果参数cb的类型为函数，那么执行cb,获取用户信息；
    } else {//如果用户信息为空，也就是说第一次调用getUserInfo，会调用用户登录接口。
      console.log(this.globalData.userInfo)
      wx.login({
        success: function (res) {
          console.log(res.code);
          if (res.code){
            var code=res.code;
            wx.getUserInfo({
              success: function (res) {

                that.globalData.userInfo = res.userInfo//把用户信息赋给globalData，如果再次调用getUserInfo函数的时候，不需要调用登录接口
                typeof cb == "function" && cb(that.globalData.userInfo)//如果参数cb类型为函数，执行cb,获取用户信息
                
                var params={
                  username: res.userInfo.nickName,
                  js_code: code,
                  pic: res.userInfo.avatarUrl,
                  province: res.userInfo.province
                };
                //发起请求  
                network.POST(
                  'https://www.ausck.com/api/get_user_openid',
                  {
                    params: params,
                    success: function (res) {
                      that.globalData.info = res.data.res//把用户信息赋给globalData，如果再次调用getUserInfo函数的时候，不需要调用登录接口
                      console.log(res.data.res.is_rz)
                      //拿到解密后的数据，进行代码逻辑
                      if (!res.data.res.is_rz){
                        wx.navigateTo({
                          url: "/pages/phone/phone"
                        })
                      }
                    },
                    fail: function () {
                      //失败后的逻辑  
                    },
                  })
              }
            })
          }
        }
      })
    }
  },

  globalData: {
    userInfo: null,
    info: null,
    personalInfo:null
  }
})